package com.sg.dto.integration.calc;

import com.sg.common.dto.BaseDto;
import com.sg.dto.integration.calc.TargetBelongCycleDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * @desc ImplementLoopCalcCyclesStandardDataComReqDto
 * @使用场景
 */
@Data
public class ImplementLoopCalcCyclesStandardDataComReqDto
        extends BaseDto
        implements Serializable {

    /**
     * 事务内数据更新批次标识
     */
    @NotNull(message = "事务内数据更新批次标识不能为空")
    @ApiModelProperty("事务内数据更新批次标识")
    private String eventBatchUpdateCode;

    /**
     * 计算开始时间
     */
    @NotNull(message = "计算开始时间不能为空")
    @ApiModelProperty("计算开始时间")
    private Date calcStartTime;

    /**
     * 目标得分单位
     */
    @NotNull(message = "目标得分单位不能为空")
    @ApiModelProperty("目标得分单位")
    private String targetScoreUnit;

    @ApiModelProperty("目标归属周期列表")
    private List<TargetBelongCycleDto> targetBelongCycleList = new ArrayList<>();

}
